package com.thh.service;

import com.thh.dao.OrderDataBaseDao;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * @Author thh
 * @Description
 * @Version 1.0
 **/
@Service
public class OrderService2 {

    @Autowired
    OrderDataBaseDao orderDataBaseDao;


    @Autowired
    MQService mqService;

    // 创建订单
    //@Transactional(rollbackFor = Exception.class) 这个时候我们把事务去掉，保证订单一定要发送成功，并且一定付钱
    public void createOrder(JSONObject orderInfo) throws  Exception{
        // 1 : 订单信息 - 插入订单系统 订单数据 （事务-1）
        orderDataBaseDao.saveOrder(orderInfo);
             // 通过消息中间件来完成数据的传递，保证数据的可靠传达，消息的发送时机，建议是订单创建成功之后在发送。
        mqService.sendMsg(orderInfo);

    }




}
